package com.sugar.psych.assessment.module.business.enums;

import com.sugar.psych.assessment.framework.common.exception.ErrorCode;

/**
 * @author Y.sugar
 * @since 2025/7/1 16:32
 */
public interface ErrorCodeConstants {

    // ========== 微信认证 1_008_001_000 ==========
    ErrorCode WE_CHAT_LOGIN_NOT_RESP = new ErrorCode(1_008_001_000, "微信认证服务无响应");
    ErrorCode GET_WECHAT_OPENID_ERROR = new ErrorCode(1_008_001_001, "微信认证失败，请稍后重试");
    ErrorCode MOBILE_GET_AUTH_IS_NOT_EMPTY = new ErrorCode(1_008_001_002, "手机号获取凭证不能为空");

    // ========== 用户信息 1_008_002_000 ==========
    ErrorCode USER_NOT_EXISTS = new ErrorCode(1_008_002_000, "用户信息不存在");
    ErrorCode USER_CREATE_ERROR = new ErrorCode(1_008_002_001, "用户注册失败，请稍后重试");
    ErrorCode USER_ACCOUNT_FORBIDDEN = new ErrorCode(1_008_002_002, "账号异常，请联系客服解决");

    // ========== 意见反馈 1_008_003_000 ==========
    ErrorCode FEEDBACK_NOT_EXISTS = new ErrorCode(1_008_003_000, "意见反馈不存在");

    // ========== 心理测评题目 1_008_004_000 ==========
    ErrorCode PSYCH_QUESTION_NOT_EXISTS = new ErrorCode(1_008_004_000, "心理测评题目不存在");

    // ========== 用户积分记录 1_008_005_000 ==========
    ErrorCode USER_POINTS_RECORD_NOT_EXISTS = new ErrorCode(1_008_005_000, "用户积分记录不存在");
    ErrorCode USER_POINTS_RECORD_ERROR = new ErrorCode(1_008_005_001, "积分变动记录失败，请稍后重试");
    ErrorCode USER_POINTS_INSUFFICIENT = new ErrorCode(1_008_005_002, "积分不足");

    // ========== 基本配置 1_008_006_000 ==========
    ErrorCode BASIC_CONFIG_NOT_EXISTS = new ErrorCode(1_008_006_000, "基本配置不存在，请联系管理员");

    // ========== 心理测评题库 1_008_007_000 ==========
    ErrorCode PSYCH_QUESTION_BANK_NOT_EXISTS = new ErrorCode(1_008_007_000, "题库不存在");
    ErrorCode PSYCH_QUESTION_BANK_NOT_EXISTS_APP = new ErrorCode(1_008_007_001, "题库不存在，无法开始测评");
    ErrorCode PSYCH_QUESTION_IS_EMPTY = new ErrorCode(1_008_007_002, "题库中没有试题，无法开始测评");

    // ========== 风险等级配置 1_008_008_000 ==========
    ErrorCode CONFIG_RISK_LEVEL_NOT_EXISTS = new ErrorCode(1_008_008_000, "风险等级配置不存在");
    ErrorCode CONFIG_RISK_LEVEL_IS_EXISTS = new ErrorCode(1_008_008_001, "当前风险等级已存在");
    ErrorCode CONFIG_RISK_LEVEL_MIN_NOT_GE_MAX = new ErrorCode(1_008_008_002, "最小值不能大于最大值");
    ErrorCode CONFIG_RISK_LEVEL_NOT_EXISTS_APP = new ErrorCode(1_008_008_003, "未匹配到对应的风险等级，请联系管理员");

    // ========== 用户心理测评记录 1_008_009_000 ==========
    ErrorCode USER_PSYCH_ASSESSMENT_RECORD_NOT_EXISTS = new ErrorCode(1_008_009_000, "用户心理测评记录不存在");
    ErrorCode USER_PSYCH_QUESTION_RECORD_NOT_EXISTS = new ErrorCode(1_008_009_001, "心理测评记录不存在");
    ErrorCode USER_PSYCH_QUESTION_RECORD_USER_NOT_MATCH = new ErrorCode(1_008_009_002, "不能回答他人的问题");
    ErrorCode USER_PSYCH_QUESTION_RECORD_ANSWER_NOT_EXISTS = new ErrorCode(1_008_009_003, "选中的答案在选项中不存在");
    ErrorCode USER_PSYCH_QUESTION_RECORD_IS_DONE = new ErrorCode(1_008_009_004, "当前测评已经完成，无需再答题");
    ErrorCode USER_PSYCH_QUESTION_RECORD_HAVE_TOP = new ErrorCode(1_008_009_005, "您已经答过首套试题");

    // ========== 勋章信息 1_008_010_000 ==========
    ErrorCode MEDAL_NOT_EXISTS = new ErrorCode(1_008_010_000, "勋章信息不存在");

    // ========== 树洞打卡 1_008_011_000 ==========
    ErrorCode USER_TREE_HOLE_CLOCK_NOT_EXISTS = new ErrorCode(1_008_011_000, "树洞打卡不存在");
    ErrorCode USER_TREE_HOLE_CLOCK_NOW_DATE_BEFORE = new ErrorCode(1_008_011_001, "打卡时间不能选择今天以前");
    ErrorCode USER_TREE_HOLE_CLOCK_NOW_DATE_AFTER = new ErrorCode(1_008_011_002, "打卡时间不能选择未来日期");
    ErrorCode USER_TREE_HOLE_CLOCK_IS_EXISTS = new ErrorCode(1_008_011_003, "打卡信息已存在，请勿重复打卡");

    // ========== 树洞AI聊天会话 1_008_012_000 ==========
    ErrorCode USER_TREE_HOLE_CHAT_RECORD_NOT_EXISTS = new ErrorCode(1_008_012_000, "聊天会话不存在");
    ErrorCode USER_TREE_HOLE_CHAT_NOT_EXISTS = new ErrorCode(1_008_012_001, "树洞AI聊天消息不存在");

    // ========== DeepSeek 1_008_015_000 ==========
    ErrorCode AI_CHAT_REPLY_ERROR = new ErrorCode(1_008_015_000, "AI回复失败，请稍后重试");
    // ========== 学校 1_008_016_000 ==========
    ErrorCode SCHOOL_NOT_EXISTS = new ErrorCode(1_008_016_000, "学校不存在");
    // ========== 用户留言 1_008_017_000 ==========
    ErrorCode USER_LEAVE_MESSAGE_NOT_EXISTS = new ErrorCode(1_008_017_000, "用户留言不存在或已失效");
    // ========== 用户留言点赞 1_008_018_000 ==========
    ErrorCode USER_LEAVE_MESSAGE_LIKED_NOT_EXISTS = new ErrorCode(1_008_018_000, "用户留言点赞不存在");
    // ========== 随机头像 1_008_019_000 ==========
    ErrorCode AVATAR_INFO_NOT_EXISTS = new ErrorCode(1_008_019_000, "匿名头像获取失败");
    // ========== 学生认证信息 1_008_020_000 ==========
    ErrorCode STUDENT_AUTH_NOT_EXISTS = new ErrorCode(1_008_020_000, "认证失败，认证信息不存在");
    ErrorCode STUDENT_AUTH_ERROR = new ErrorCode(1_008_020_001, "学生认证失败，请稍后重试");
    ErrorCode STUDENT_AUTH_IS_AUTHED = new ErrorCode(1_008_020_002, "学生号已被认证");
}
